import { TweenPlugin } from "./TweenPlugin";
import { TweenLite } from "../TweenLite";
//class VolumePlugin
    
    export  class VolumePlugin extends TweenPlugin
    {
        constructor()
        {
            
            super();this.propName = "volume";
            this.overwriteProps = ["volume"];
            return;
        }

        public /* override */ onInitTween(arg1: Object, arg2, arg3: TweenLite): Boolean
        {
            if (isNaN(arg2) || !arg1.hasOwnProperty("soundTransform")) 
            {
                return false;
            }
            this._target = arg1;
            this._st = this._target.soundTransform;
            addTween(this._st, "volume", this._st.volume, arg2, "volume");
            return true;
        }

        public /* override */ set changeFactor(arg1: number)
        {
            updateTweens(arg1);
            this._target.soundTransform = this._st;
            return;
        }

        public static /* const */API: number=1;

        protected /* var */_target: Object;

        protected /* var */_st: Object /* flash.media.SoundTransform */;
    }
